/**
 * 导航栏
 */
layui.use('element', function () {
    var element = layui.element; //导航的hover效果、二级菜单等功能，需要依赖element模块

    //监听导航点击
    element.on('nav(demo)', function (elem) {
        //console.log(elem)
        layer.msg(elem.text());
    });
});


/**
 * 退出登录 ，清空会话作用域数据
 */
$("#logout").on('click', function () {
    //询问框
    layer.confirm('您确定要退出嘛？', {skin: 'layui-layer-lan',icon:3,
        btn: ['是的', '取消'] //按钮
    }, function () {
        sessionStorage.clear();

        window.location.replace("../login/login.html");

    }, function () {

    });
});


/**
 * 设置导航栏用户头像
 */
let user = JSON.parse(sessionStorage.getItem("user"));
if (user == null) {
    $("#pic").attr("src", "images/userImg.png");
} else {
    $("#pic").attr("src", "images/" + user.image);
}



/**
 * 模糊查询影片
 */
$("#commit").click(function () {
    let cond = $("#cond").val();

    if (cond == "") {
        window.open("home_filmsLike.html");
        return;
    }

    let formData = {
        cond: cond
    }
    // 发送异步 ，实现影片的模糊查询
    $.get('http://localhost:8080/cinema/api/SelectFilmsByLikeServlet.do', formData, function (dto) {

        localStorage.setItem("filmsLike", JSON.stringify(dto.value));
        window.open("home_filmsLike.html");
    });
});



$(function () {
    //读取cookie
    if ($.cookie("djsendtime") != undefined && !isNaN($.cookie("djsendtime"))) {    //读取到了cookie值
        var djsendtime = $.cookie("djsendtime");                                    // 倒计时结束时间
        var now = new Date().getTime();                                             // 当前时间
        var locksecends = parseInt((djsendtime - now) / 1000);
        if (locksecends <= 0) {
            $.cookie("djsendtime", null);               // 说明倒计时已经结束了 ，清楚cookie中保存的结束时间

            let id = localStorage.getItem("orderId");

            // 支付时间到了后删除订单 , 并修改座位状态
            let formData = {
                orderId: id
            }
            $.ajax({
                url: 'http://localhost:8080/cinema/api/DeleteOrderByIdServlet.do',
                type: 'delete',
                data: JSON.stringify(formData),
                dataType: 'json',
                success: function (dto) {
                    if (dto.code == 200) {

                        // 从本地存储取出数据 ，根据循环遍历的座位ID、以及放映ID，来修改座位状态
                        let currentSeat = JSON.parse(localStorage.getItem("currentSeat"));
                        for (let sid of currentSeat.seatIdarr) {
                            let formData = {
                                seatId: sid,
                                showId: currentSeat.showId,
                                status: 0
                            }

                            // 发送异步，实现根据放映ID、座位ID 修改放映场次对应影厅的座位状态
                            $.ajax({
                                url: 'http://localhost:8080/cinema/api/UpdateSeatStatusByIdServlet.do',
                                type: 'put',
                                data: JSON.stringify(formData),
                                dataType: 'json',
                                success: function (dto) {

                                }

                            });
                        }

                    } else {
                        console.log(dto.msg);
                    }
                }

            });


        } else {
            LockButton('#Time', locksecends);           //  否则就将这个差值作为倒计时开始的数字
        }
    }

})

/**
 * 倒计时
 * @param {*} btnObjId      播放倒计时时间的节点
 * @param {*} locksecends   倒计时时间
 */
var LockButton = function (btnObjId, locksecends) {
    //1.获取当前系统时间
    //2.获取 locksecends 后的系统时间
    //3.用cookie保存到期时间
    //4.每次加载后获取cookie中保存的时间
    //5.用到期时间减去当前时间获取倒计时
    var djsendtime = $.cookie("djsendtime");  // 获取倒计时结束时间
    if (djsendtime == null || djsendtime == undefined || djsendtime == 'undefined' || djsendtime == 'null') {
        var now = new Date().getTime();              //当前时间
        var endtime = locksecends * 1000 + now;      //倒计时结束时间
        $.cookie("djsendtime", endtime);             //将倒计时结束时间保存到cookie
    }

    $(btnObjId).addClass('disabled').attr('disabled', 'disabled').text(locksecends);
    $('body').off('click', '#btnSendSMS');
    var timer = setInterval(function () {
        locksecends--;
        $(btnObjId).text(locksecends);
        if (locksecends <= 0) {
            
            // 支付时间到了后删除订单
            let formData = {
                orderId: localStorage.getItem("orderId")
            }
            $.ajax({
                url: 'http://localhost:8080/cinema/api/DeleteOrderByIdServlet.do',
                type: 'delete',
                data: JSON.stringify(formData),
                dataType: 'json',
                success: function (dto) {
                    if (dto.code == 200) {

                        let currentSeat = JSON.parse(localStorage.getItem("currentSeat"));
                        // 从本地存储取出数据 ，根据循环遍历的座位ID、以及放映ID，来修改座位状态
                        for (let sid of currentSeat.seatIdarr) {
                            let formData = {
                                seatId: sid,
                                showId: currentSeat.showId,
                                status: 0
                            }

                            // 发送异步，实现根据放映ID、座位ID 修改放映场次对应影厅的座位状态
                            $.ajax({
                                url: 'http://localhost:8080/cinema/api/UpdateSeatStatusByIdServlet.do',
                                type: 'put',
                                data: JSON.stringify(formData),
                                dataType: 'json',
                                success: function (dto) {

                                }

                            });
                        }

                    } else {
                        console.log(dto.msg);
                    }
                }

            });

            //倒计时结束清除cookie值
            $.cookie("djsendtime", null);
            $("#timeOut").show();

            $('body').on('click', btnObjId);
            clearInterval(timer);
        }
    }, 1000);
};